import request from '@/config/axios'

// B 站UP主信息 VO
export interface UpInfoVO {
  id: number // 自增ID
  userId: string // 用户ID
  nickname: string // 用户昵称
  avatar: string // 用户头像地址
  addTs: number // 记录添加时间戳
  lastModifyTs: number // 记录最后修改时间戳
  totalFans: number // 粉丝数
  totalLiked: number // 总获赞数
  userRank: number // 用户等级
  isOfficial: number // 是否官号
}

// B 站UP主信息 API
export const UpInfoApi = {
  // 查询B 站UP主信息分页
  getUpInfoPage: async (params: any) => {
    return await request.get({ url: `/bilibili/up-info/page`, params })
  },

  // 查询B 站UP主信息详情
  getUpInfo: async (id: number) => {
    return await request.get({ url: `/bilibili/up-info/get?id=` + id })
  },

  // 新增B 站UP主信息
  createUpInfo: async (data: UpInfoVO) => {
    return await request.post({ url: `/bilibili/up-info/create`, data })
  },

  // 修改B 站UP主信息
  updateUpInfo: async (data: UpInfoVO) => {
    return await request.put({ url: `/bilibili/up-info/update`, data })
  },

  // 删除B 站UP主信息
  deleteUpInfo: async (id: number) => {
    return await request.delete({ url: `/bilibili/up-info/delete?id=` + id })
  },

  // 导出B 站UP主信息 Excel
  exportUpInfo: async (params) => {
    return await request.download({ url: `/bilibili/up-info/export-excel`, params })
  }
}